/*
    Loader
 */
.r-loader {
  display: none;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(255, 255, 255, 0.8);
}

.spinner {
  width: 40px;
  height: 40px;
  position: absolute;
  top: 20%;
  left: 50%;
  transform: translateX(-50%);
  margin: 100px auto;
}

.double-bounce1,
.double-bounce2 {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #af265a;
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation: sk-bounce 2s infinite ease-in-out;
  animation: sk-bounce 2s infinite ease-in-out;
}

.double-bounce2 {
  -webkit-animation-delay: -1s;
  animation-delay: -1s;
}

@-webkit-keyframes sk-bounce {
  0%,
  100% {
    -webkit-transform: scale(0);
  }
  50% {
    -webkit-transform: scale(1);
  }
}

@keyframes sk-bounce {
  0%,
  100% {
    transform: scale(0);
    -webkit-transform: scale(0);
  }
  50% {
    transform: scale(1);
    -webkit-transform: scale(1);
  }
}

/*
    Customize Bootstrap Tabs
 */
.r-tabs {
  position: relative;
  border: none;
}

.nav-tabs.r-tabs .nav-item.show .nav-link,
.nav-tabs.r-tabs .nav-link.active {
  color: inherit;
  background: none;
  border: none;
}
.nav-tabs.r-tabs .nav-link.active p {
  color: #af265a !important;
}

.r-tabs:before {
  top: 26px;
  left: 0;
  right: 0;
  position: absolute;
  content: " ";
  height: 10px;
  border-radius: 10px;
  background-color: #e5e5e5;
}

.r-tabs .nav-item {
  position: relative;
}

.r-tabs .nav-item:first-child:before {
  content: " ";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 50%;
  background: #fff;
}

.r-tabs .nav-item:last-child:before {
  content: " ";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  right: 0%;
  background: #fff;
}

.r-tabs .nav-link {
  position: relative;
  display: inline-block;
  text-align: center;
  border: none;
  background: none;
}

.r-tabs .nav-link > span {
  position: relative;
  display: inline-block;
  width: 44px;
  height: 44px;
  background: white;
  border: 10px solid #e5e5e5;
  border-radius: 50%;
}

.r-tabs .nav-link.active > span {
  width: 34px;
  height: 34px;
  background: #af265a;
  background-size: 300% 300%;
  animation: gradient 3s ease infinite;
  padding: 12px;
  border: 10px solid #af265a;
}

.r-tabs .nav-link > span > span {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 12px;
  height: 12px;
  transform: translate(-50%, -50%);
  background: url("assets/page/img/arrow.svg") no-repeat 50% 50%;
}

.r-tabs .nav-link p {
  font-weight: bold;
  color: #e5e5e5;
  font-size: 80%;
  line-height: 1.4;
}

@media screen and (max-width: 992px) {
  .r-tabs .nav-link p {
    font-size: 60%;
  }

  .r-tabs .nav-link:not(.active) p {
    display: none;
  }
}

/*
    Bootstrap Tabs
 */
#reservations-tab .list-group-item {
  border: none;
  transition: none;
  -moz-transition: none;
  -webkit-transition: none;
  -ms-transition: none;
  -o-transition: none;
}

#reservations-tab .active {
  position: relative;
  background: #af265a;
}

#reservations-tab .active:after {
  content: " ";
  position: absolute;
  right: -5px;
  top: 15px;
  width: 20px;
  height: 20px;
  background: #af265a;
  transform: rotate(45deg);
}

/*
    Custom Radio Input
 */
label.custom-control,
.custom-controls,
.custom-control {
  padding: 0;
  border: 3px solid transparent;
  border-radius: 20px;
  transition: 0.4s;
  -webkit-transition: 0.4s;
  -moz-transition: 0.4s;
  -ms-transition: 0.4s;
  -o-transition: 0.4s;
}
#reservation-form .custom-controls:hover,
#reservation-form .custom-control:hover {
  border-radius: 20px;
  border: 3px solid #af265a;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}
label.custom-control > div,
.custom-controls > * {
  position: relative;
  padding: 20px 24px 60px;
  border-radius: 20px;
  transition: all 0.4s;
  height: 100% !important;
  display: flex !important;
  justify-content: flex-start;
  align-items: flex-end;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}
.available-hours label.custom-control > * {
  padding: 20px !important;
}

label.custom-control.custom-radio > div,
label.custom-controls.custom-radio > *,
.custom-controls.custom-radio > * {
  padding: 12px 0;
  text-align: center;
}

label.custom-control input:checked ~ div:after,
.custom-controls input:checked ~ label:after {
  content: "";
  position: absolute;
  top: 20px;
  right: 20px;
  width: 15px;
  height: 15px;
  background: url("assets/page/img/check.svg") no-repeat 50% 50%;
}
.custom-controls:hover .fake-label p {
  z-index: 2 !important;
  background: transparent !important;
  color: inherit !important;
}
label.custom-control.custom-radio input:checked ~ div:after,
label.custom-control.custom-radio input:checked ~ *:after,
.custom-controls.custom-radio input:checked {
  top: -4px;
  right: 0px;
}
.available-hours label.custom-control.custom-radio input:checked ~ div:after,
label.custom-control.custom-radio input:checked ~ *:after {
  top: 10px;
  right: 10px;
}

label.custom-control input,
.custom-controls input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

label.custom-control h5,
.custom-controls label {
  color: #af265a !important;
  font-size: 1rem;
  font-weight: bold;
}

label.custom-control p,
.custom-controls p {
  margin: 0;
  padding: 0;
  font-size: 80%;
}

label.custom-control.custom-radio p,
.custom-controls.custom-radio p {
  font-weight: 700;
  font-size: 0.9rem;
  text-align: center;
  width: 100%;
}

.fake-label {
  position: absolute;
  top: 0;
  width: 100%;
  padding: 35px 24px;
  z-index: -1;
  padding-top: 90px;
  background: transparent !important;
  box-shadow: none !important;
}

#service-categoriesContent {
  padding-top: 20px;
}

/*
    Calendar
 */
#reservation-page .available-hours {
  padding: 1rem;
  border: 1px solid #dee2e6;
  border-radius: 15px;
}

#reservation-page .calendar {
  padding: 1rem;
  border: 1px solid #dee2e6;
  border-radius: 15px;
}

.ui-helper-hidden {
  display: none;
}

.ui-helper-hidden-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.ui-helper-reset {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  line-height: 1.3;
  text-decoration: none;
  font-size: 100%;
  list-style: none;
}

.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
  content: "";
  display: table;
  border-collapse: collapse;
}

.ui-helper-clearfix:after {
  clear: both;
}

.ui-helper-zfix {
  width: 25%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  opacity: 0;
  filter: Alpha(Opacity=0);
  /* support: IE8 */
}

.ui-front {
  z-index: 100;
}

/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
  cursor: default !important;
  pointer-events: none;
}

/* Icons
----------------------------------*/
.ui-icon {
  display: inline-block;
  vertical-align: middle;
  margin-top: -0.25em;
  position: relative;
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat;
}

.ui-widget-icon-block {
  left: 50%;
  margin-left: -8px;
  display: block;
}

/* Misc visuals
----------------------------------*/

/* Overlays */
.ui-widget-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#birthday.ui-widget-overlay {
  width: 50% !important;
}

.ui-accordion .ui-accordion-header {
  display: block;
  cursor: pointer;
  position: relative;
  margin: 2px 0 0 0;
  padding: 0.5em 0.5em 0.5em 0.7em;
  font-size: 100%;
}

.ui-accordion .ui-accordion-content {
  padding: 1em 2.2em;
  border-top: 0;
  overflow: auto;
}

.ui-autocomplete {
  position: absolute;
  top: 0;
  left: 0;
  cursor: default;
}

.ui-menu {
  list-style: none;
  padding: 0;
  margin: 0;
  display: block;
  outline: 0;
}

.ui-menu .ui-menu {
  position: absolute;
}

.ui-menu .ui-menu-item {
  margin: 0;
  cursor: pointer;
  /* support: IE10, see #8844 */
  list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
}

.ui-menu .ui-menu-item-wrapper {
  position: relative;
  padding: 3px 1em 3px 0.4em;
}

.ui-menu .ui-menu-divider {
  margin: 5px 0;
  height: 0;
  font-size: 0;
  line-height: 0;
}

.ui-menu .ui-state-focus,
.ui-menu .ui-state-active {
  margin: -1px;
}

/* icon support */
.ui-menu-icons {
  position: relative;
}

.ui-menu-icons .ui-menu-item-wrapper {
  padding-left: 2em;
}

/* left-aligned */
.ui-menu .ui-icon {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0.2em;
  margin: auto 0;
}

/* right-aligned */
.ui-menu .ui-menu-icon {
  left: auto;
  right: 0;
}

.ui-button {
  padding: 0.4em 1em;
  display: inline-block;
  position: relative;
  line-height: normal;
  margin-right: 0.1em;
  cursor: pointer;
  vertical-align: middle;
  text-align: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;

  /* Support: IE <= 11 */
  overflow: visible;
}

.ui-button,
.ui-button:link,
.ui-button:visited,
.ui-button:hover,
.ui-button:active {
  text-decoration: none;
}

/* to make room for the icon, a width needs to be set here */
.ui-button-icon-only {
  width: 2em;
  box-sizing: border-box;
  text-indent: -9999px;
  white-space: nowrap;
}

/* no icon support for input elements */
input.ui-button.ui-button-icon-only {
  text-indent: 0;
}

/* button icon element(s) */
.ui-button-icon-only .ui-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -8px;
  margin-left: -8px;
}

.ui-button.ui-icon-notext .ui-icon {
  padding: 0;
  width: 2.1em;
  height: 2.1em;
  text-indent: -9999px;
  white-space: nowrap;
}

input.ui-button.ui-icon-notext .ui-icon {
  width: auto;
  height: auto;
  text-indent: 0;
  white-space: normal;
  padding: 0.4em 1em;
}

/* workarounds */
/* Support: Firefox 5 - 40 */
input.ui-button::-moz-focus-inner,
button.ui-button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

.ui-controlgroup {
  vertical-align: middle;
  display: inline-block;
}

.ui-controlgroup > .ui-controlgroup-item {
  float: left;
  margin-left: 0;
  margin-right: 0;
}

.ui-controlgroup > .ui-controlgroup-item:focus,
.ui-controlgroup > .ui-controlgroup-item.ui-visual-focus {
  z-index: 9999;
}

.ui-controlgroup-vertical > .ui-controlgroup-item {
  display: block;
  float: none;
  width: 100%;
  margin-top: 0;
  margin-bottom: 0;
  text-align: left;
}

#birthday.ui-controlgroup-vertical > .ui-controlgroup-item {
  width: 50% !important;
}

.ui-controlgroup-vertical .ui-controlgroup-item {
  box-sizing: border-box;
}

.ui-controlgroup .ui-controlgroup-label {
  padding: 0.4em 1em;
}

.ui-controlgroup .ui-controlgroup-label span {
  font-size: 80%;
}

.ui-controlgroup-horizontal .ui-controlgroup-label + .ui-controlgroup-item {
  border-left: none;
}

.ui-controlgroup-vertical .ui-controlgroup-label + .ui-controlgroup-item {
  border-top: none;
}

.ui-controlgroup-horizontal .ui-controlgroup-label.ui-widget-content {
  border-right: none;
}

.ui-controlgroup-vertical .ui-controlgroup-label.ui-widget-content {
  border-bottom: none;
}

/* Spinner specific style fixes */
.ui-controlgroup-vertical .ui-spinner-input {
  /* Support: IE8 only, Android < 4.4 only */
  width: 75%;
  width: calc(100% - 2.4em);
}

.ui-controlgroup-vertical .ui-spinner .ui-spinner-up {
  border-top-style: solid;
}

.ui-checkboxradio-label .ui-icon-background {
  box-shadow: inset 1px 1px 1px #ccc;
  border-radius: 0.12em;
  border: none;
}

.ui-checkboxradio-radio-label .ui-icon-background {
  width: 16px;
  height: 16px;
  border-radius: 1em;
  overflow: visible;
  border: none;
}

.ui-checkboxradio-radio-label.ui-checkboxradio-checked .ui-icon,
.ui-checkboxradio-radio-label.ui-checkboxradio-checked:hover .ui-icon {
  background-image: none;
  width: 8px;
  height: 8px;
  border-width: 4px;
  border-style: solid;
}

.ui-checkboxradio-disabled {
  pointer-events: none;
}

@media (min-width: 0px) {
  .ui-datepicker {
    width: 100%;
  }
}

@media (min-width: 576px) {
  .ui-datepicker {
    width: 100%;
  }
}

@media (min-width: 992px) {
  .ui-datepicker {
    width: 25%;
  }

  .ui-datepicker table {
    width: auto;
  }
}

.ui-datepicker {
  padding: 0.2em 0.2em 0;
  display: none;
  text-align: center;
}

.ui-datepicker-calendar {
  width: 100%;
}

.ui-datepicker .ui-datepicker-header {
  /*position: relative;*/
  padding: 0.2em 0;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  position: absolute;
  top: 1.5rem;
  margin-right: 2.5rem;
  width: 1.3em;
  height: 1.3em;
}

.ui-datepicker .ui-datepicker-prev {
  right: 10%;
}

.ui-datepicker .ui-datepicker-next {
  right: 0%;
}

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -8px;
  top: 50%;
  margin-top: -8px;
}

.ui-datepicker .ui-datepicker-prev span {
  background-image: url("assets/page/img/back.svg") !important;
  background: transparent;
}

.ui-datepicker .ui-datepicker-next span {
  background-image: url("assets/page/img/next.svg") !important;
  background: transparent;
}

.ui-datepicker .ui-datepicker-title {
  /*margin: 0 2.3em;
    line-height: 1.8em;*/
  text-align: center;
  display: table-cell;
  width: 200px;
}

.ui-datepicker .ui-datepicker-title select {
  margin: 0.8rem 0 0 0;
}

.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
  width: 45%;
  -webkit-appearance: none;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAeCAYAAABuUU38AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAUxJREFUeNrM1sEJwkAQBdCsngXPHsQO9O5FS7AAMVYgdqAd2IGCDWgFnryLFQiCZ8EGnJUNimiyM/tnk4HNEAg/8y6ZmMRVqz9eUJvRaSbvutCZ347bXVJy/ZnvTmdJ862Me+hAbZCTs6GHpyUi1tTSvPnqTpoWZPUa7W7ncT3vK4h4zVejy8QzM3WhVUO8ykI6jOxoGA4ig3BLHcNFSCGqGAkig2yqgpEiMsjSfY9LxYQg7L6r0X6wS29YJiYQYecemY+wHrXD1+bklGhpAhBDeu/JfIVGxaAQ9sb8CI+CQSJ+QmJg0Ii/EE2MBiIXooHRQhRCkBhNhBcEhLkwf05ZCG8ICCOpk0MULmvDSY2M8UawIRExLIQIEgHDRoghihgRIgiigBEjgiFATBACAgFgghEwSAAGgoBCBBgYAg5hYKAIFYgHBo6w9RRgAFfy160QuV8NAAAAAElFTkSuQmCC") !important;
  background-size: 12px !important;
  background-position: 88% 55% !important;
  background-repeat: no-repeat !important;
  height: 50px;
  border-radius: 5px;
  box-shadow: none;
  border: 1px solid #ced6e0;
  transition: all 0.3s ease-in-out;
  padding: 5px 15px;
  background: none;
  color: #af265a;
  font-weight: bold;
}

.ui-datepicker-month {
  font-weight: lighter !important;
}

.ui-datepicker-year {
  font-weight: bold !important;
}

.ui-datepicker table {
  font-size: 1em;
  border-collapse: collapse;
  margin: 0 0 0.4em;
  table-layout: fixed;
}

#birthday.ui-datepicker table {
  width: 50% !important;
}

.ui-datepicker th {
  padding: 0.7em 0.3em;
  text-align: center;
  border: 0;
  text-transform: uppercase;
}

.ui-datepicker td {
  border: 0;
}

.ui-datepicker td span,
.ui-datepicker td a {
  display: block;
  text-align: center;
  border-radius: 50%;
  text-decoration: none;
  width: 16px;
  height: 16px;
  padding: 16px;
  margin: 4px;
  line-height: 0px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (min-width: 1920px) {
  .ui-datepicker td span,
  .ui-datepicker td a {
    padding: 27px;
  }
}

.ui-datepicker .ui-datepicker-buttonpane {
  background-image: none;
  margin: 0.7em 0 0 0;
  padding: 0 0.2em;
  border-left: 0;
  border-right: 0;
  border-bottom: 0;
}

.ui-datepicker .ui-datepicker-buttonpane button {
  float: right;
  margin: 0.5em 0.2em 0.4em;
  cursor: pointer;
  padding: 0.2em 0.6em 0.3em 0.6em;
  width: auto;
  overflow: visible;
}

.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
  float: left;
}

/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
  width: auto;
}

.ui-datepicker-multi .ui-datepicker-group {
  float: left;
}

.ui-datepicker-multi .ui-datepicker-group table {
  width: 95%;
  margin: 0 auto 0.4em;
}

.ui-datepicker-multi-2 .ui-datepicker-group {
  width: 50%;
}

.ui-datepicker-multi-3 .ui-datepicker-group {
  width: 33.3%;
}

.ui-datepicker-multi-4 .ui-datepicker-group {
  width: 25%;
}

.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
  border-left-width: 0;
}

.ui-datepicker-multi .ui-datepicker-buttonpane {
  clear: left;
}

.ui-datepicker-row-break {
  clear: both;
  width: 100%;
  font-size: 0;
}

#birthday.ui-datepicker-row-break {
  width: 50% !important;
}

/* RTL support */
.ui-datepicker-rtl {
  direction: rtl;
}

.ui-datepicker-rtl .ui-datepicker-prev {
  right: 2px;
  left: auto;
}

.ui-datepicker-rtl .ui-datepicker-next {
  left: 2px;
  right: auto;
}

.ui-datepicker-rtl .ui-datepicker-prev:hover {
  right: 1px;
  left: auto;
}

.ui-datepicker-rtl .ui-datepicker-next:hover {
  left: 1px;
  right: auto;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane {
  clear: right;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button {
  float: left;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
  float: right;
}

.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
  border-right-width: 0;
  border-left-width: 1px;
}

/* Icons */
.ui-datepicker .ui-icon {
  display: block;
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat;
  left: 0.5em;
  top: 0.3em;
}

.ui-widget-header {
  color: #af265a;
  font-size: 1.75rem;
  line-height: 0.6;
  margin-bottom: 10px;
}

.ui-widget-header a {
  color: #333333;
}

.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button,
html .ui-button.ui-state-disabled:hover,
html .ui-button.ui-state-disabled:active {
  font-weight: bolder;
  color: #af265a;
}

.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover {
  background: #af265a;
  color: #ffffff;
  display: flex;
  justify-content: center;
  align-items: center;
}

.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
  opacity: 0.35;
  filter: Alpha(Opacity=35);
  background-image: none;
}

.ui-icon {
  width: 16px;
  height: 16px;
}

@media screen and (min-width: 992px) and (max-width: 1200px) {
  .ui-datepicker td span,
  .ui-datepicker td a {
    padding: 19px;
  }
}

/*
    Errors
 */
.r-error {
  color: #dc3545;
  position: absolute;
  height: auto;
  width: 100%;
  display: inline-block;
  left: 0;
  text-align: end;
  padding: 1rem 1.5rem;
  z-index: 0;
  font-size: 12px;
}

@media screen and (min-width: 768px) and (max-width: 992px) {
  .r-error {
    padding: 6px 5px 6px 25px;
    font-size: 10px;
    white-space: normal;
    overflow: auto;
    text-overflow: unset;
  }

  .r-icon {
    top: 6px;
    left: 4px;
    width: 15px;
    height: 15px;
    font-size: 12px;
    line-height: 14px;
  }
}

.r-error-hidden {
  height: 0;
  opacity: 0;
}

/*
    Inputs
 */
label.r-label {
  display: block;
  margin-bottom: 5px;
  padding-left: 1rem;
  padding-right: 1rem;
  width: 100%;
  font-weight: 500;
  font-size: 80%;
  color: #af265a;
  user-select: none;
}

.r-input {
  width: 100%;
  height: 50px;
  border-radius: 5px;
  box-shadow: none;
  border: 2px solid #ced6e0;
  transition: all 0.3s ease-in-out;
  font-size: 18px;
  padding: 5px 15px;
  background: none;
  color: #af265a;
  font-weight: bold;
  z-index: 1;
  position: relative;
}

.r-input:hover,
.r-input:focus {
  border-color: #af265a;
  margin-top: -35px;
  height: 85px;
  padding: 35px 15px 15px 15px;
}

.r-input:focus {
  box-shadow: 0px 10px 20px -13px rgba(175, 38, 90, 0.35);
}

textarea.r-input {
  height: 120px;
  background: transparent !important;
  padding: 35px 15px 15px 15px;
}
select.r-input  {
    height: 50px;
}
select.r-input:hover,
select.r-input:focus {
  border-color: #af265a;
  margin-top: -35px;
  height: 85px !important;
  padding: 35px 15px 15px 15px;
}
textarea.r-input:hover,
textarea.r-input:focus {
  border-color: #af265a;
  margin-top: -35px;
  height: 155px;
  padding: 35px 15px 15px 15px;
}

.r-error-group > .r-input {
  border: 2px solid #e47272;
}
#reservation-form .form-check {
  border: none !important;
  box-shadow: none !important;
}
.form-check-label {
  position: relative;
  top: -1px;
  font-size: 80%;
  padding-top: 2px;
}

.form-check-label a {
  color: #af265a;
  font-weight: 700;
}

/**
    Info Box
 */
.r-info-box {
  /*padding: 3rem;
    border-radius: 0.6rem;*/
  background: #af265a;
  color: #fff;
  border: 1px solid #dee2e6;
}

.r-info-box .old-price {
  color: #f8f9fa;
}

.r-info-box .old-price.coupon-active {
  text-decoration: line-through;
  font-size: 1rem;
  color: #dcdcdc;
}

.r-info-box .new-price {
  display: none;
  color: #f8f9fa;
}

.r-info-box .new-price.coupon-active {
  display: block;
}

/*#service-categories .nav-item {
    margin-right: 20px;
}*/

#service-categories.nav-tabs .nav-link.active,
#service-categories.nav-tabs .show > .nav-link {
  color: white !important;
  box-shadow: 0 0.5rem 2rem rgba(0, 0, 0, 0.1) !important;
  height: 100px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  /* border: 3px solid #af265a !important; */
  background-color: rgba(175,38,90,1);
}

#service-categories.nav-tabs {
  border: 3px solid transparent !important;
}

#service-categories.nav-tabs .nav-link {
  border-radius: 20px !important;
  height: 100px;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  align-self: center;
  letter-spacing: 1.8px;
  font-weight: 700;
  background:  rgba(175,38,90,.1);;
  box-shadow: 0 0.5rem 2rem rgba(0, 0, 0, 0.1) !important;
  border: 3px solid transparent !important;
  color: #af265a;
  padding: 0rem 0.5rem;
  font-size: 0.9rem;
}

#service-categories.nav-tabs .nav-link:hover {
  background: #af265a;
  border: 3px solid #af265a !important;
  color: white !important;
}

/* Custom control checkbox */
.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
  background-color: #af265a !important;
}

.custom-checkbox
  .custom-control-input:checked:focus
  ~ .custom-control-label::before {
  box-shadow: none !important;
}

.custom-checkbox .custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: none !important;
}

.custom-checkbox .custom-control-input:active ~ .custom-control-label::before {
  background-color: #af265a;
}

/* Custom control checkbox end */

/* Textbox auto fill background */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  background-color: transparent !important;
  -webkit-text-fill-color: #af265a;
}

/*@-webkit-keyframes autofill {
    0%,
    100% {
        color: #666;
        background: transparent;
    }
}

input:-webkit-autofill {
    -webkit-animation-delay: 1s;
    -webkit-animation-name: autofill;
    -webkit-animation-fill-mode: both;
}*/

/* Textbox auto fill background end */
.text-black-50 {
  color: rgba(0, 0, 0, 0.3) !important;
}

.alert-purple {
  color: #af265a;
  background-color: rgba(175, 38, 90, 0.1);
  border-color: rgba(175, 38, 90, 0.1);
  border-radius: 50rem;
}
@media (min-width: 0px) and (max-width: 768px) {
  .alert-purple {
    border-radius: 20px;
  }
}

::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  font-family: "Raleway", sans-serif !important;
}
::-moz-placeholder {
  /* Firefox 19+ */
  font-family: "Raleway", sans-serif !important;
}
:-ms-input-placeholder {
  /* IE 10+ */
  font-family: "Raleway", sans-serif !important;
}
:-moz-placeholder {
  /* Firefox 18- */
  font-family: "Raleway", sans-serif !important;
}

#tab-services .badge-warning {
  width: 20px;
  height: 20px;
  line-height: 16px;
  text-align: center;
}

.custom-control-label::before,
.custom-control-label::after {
  top: 0!important;
  left: 0 !important;
}
.custom-checkbox .custom-control-label {
  padding-top: calc(6px + (0 - 6) * ((100vw - 375px) / (1920 - 375)));
  padding-left: calc(36px + (40 - 36) * ((100vw - 375px) / (1920 - 375)));
}

/* Payment */
#payment-method label {
  /*height: 35px;*/
  position: relative;
  color: #8798ab;
  display: block;
  margin-top: 30px;
  margin-bottom: 20px;
}

#payment-method label > span {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  font-weight: 300;
  line-height: 32px;
  color: #8798ab;
  border-bottom: 1px solid #586a82;
  transition: border-bottom-color 200ms ease-in-out;
  cursor: text;
  pointer-events: none;
}

#payment-method label > span span {
  position: absolute;
  top: 0;
  left: 0;
  transform-origin: 0% 50%;
  transition: transform 200ms ease-in-out;
  cursor: text;
}

#payment-method label .field.is-focused + span span,
#payment-method label .field:not(.is-empty) + span span {
  transform: scale(0.68) translateY(-36px);
  cursor: default;
}

#payment-method label .field.is-focused + span {
  border-bottom-color: #af265a;
}

#payment-method .field {
  background: transparent;
  font-weight: 300;
  border: 0;
  color: #af265a;
  outline: none;
  cursor: text;
  display: block;
  width: 100%;
  line-height: 32px;
  padding-bottom: 3px;
  transition: opacity 200ms ease-in-out;
}

#payment-method .field::-webkit-input-placeholder {
  color: #af265a;
}

#payment-method .field::-moz-placeholder {
  color: #af265a;
}

#payment-method .field:-ms-input-placeholder {
  color: #af265a;
}

#payment-method .field.is-empty:not(.is-focused) {
  opacity: 0;
}

#payment-method .outcome {
  float: left;
  width: 100%;
  padding-top: 8px;
  min-height: 20px;
  text-align: center;
}

#payment-method .success,
#payment-method .error {
  display: none;
  font-size: 15px;
}

#payment-method .success.visible,
#payment-method .error.visible {
  display: inline;
}

#payment-method .error {
  color: #e4584c;
}

#payment-method .success {
  color: #34d08c;
}

#payment-method .success .token {
  font-weight: 500;
  font-size: 15px;
}

#payment-method .ElementsApp input {
  font-family: "Raleway", sans-serif !important;
}

.tooltips {
  position: relative;
  display: inline-block;
  border-bottom: 1px dotted black;
}

.tooltips .tooltiptext {
  visibility: hidden;
  width: 250px;
  background-color: black;
  color: #fff;
  text-align: center;
  border-radius: 50rem;
  padding: 5px 0;
  /*Positionthetooltip*/
  position: absolute;
  z-index: 1;
  bottom: 120%;
  left: 50%;
  margin-left: -125px;
  -webkit-border-radius: 50rem;
  -moz-border-radius: 50rem;
  -ms-border-radius: 50rem;
  -o-border-radius: 50rem;
  opacity: 0.8;
}

.tooltips:hover .tooltiptext {
  visibility: visible;
}
#card-element .is-focused .Icon-fill{
    fill: yellow !important;
}
.ElementsApp.is-invalid .Icon-fill--invalid {
    fill: yellow !important;
  }
